共计 1193 个字符,预计需要花费 3 分钟才能阅读完成。
项目
https://github.com/hu3rror/memos-on-fly
准备工作
- 注册 FLY.IO
用以部署 memos - 注册 B2C
https://www.backblaze.com/cloud-storage
用以同步备份 memos 数据库
新建 BUCKET, 并获取<keyId>
和<applicationKey>
安装 flyctl
Install flyctl
以 WINDOWS 为例
pwsh -Command "iwr https://fly.io/install.ps1 -useb | iex"
其他系统请参照官方
新建 APP
初始化
flyctl launch
按照提示选择会生成一个 FLY.TOML 文件
编辑 FLY.TOML
添加以下
[build]
image = "ghcr.io/hu3rror/memos-litestream:latest"
#如果不需要备份数据库则可以选择官方的 docker 镜像 ghcr.io/usememos/memos:latest
#使用官方镜像可以删掉 env 的部分
[env]
# Details see: https://litestream.io/guides/backblaze/
LITESTREAM_REPLICA_BUCKET = "B2C 桶名称" # change to your litestream bucket name
LITESTREAM_REPLICA_ENDPOINT = "s3.us-east-005.backblazeb2.com" # change to your litestream endpoint url
LITESTREAM_REPLICA_PATH = "memos_prod.db" # keep the default or change to whatever path you want
[[mounts]]
source = "memos_data"
destination = "/var/opt/memos"
[http_service]
internal_port = 5230
force_https = true
auto_stop_machines = false
auto_start_machines = true
min_machines_running = 0
添加持久卷
flyctl volumes create memos_data --region hkg --size 1
密钥
将 B2 存储的密钥添加到 fly 的密钥存储中, 使用官方镜像可以忽略此步骤
flyctl secrets set LITESTREAM_ACCESS_KEY_ID="<keyId>" LITESTREAM_SECRET_ACCESS_KEY="<applicationKey>"
部署
flyctl deploy
升级版本
再次执行
flyctl deploy
演示地址
https://memosim.fly.dev/
绑定域名演示
https://imad.top
https://t.memos.ee/
正文完